#ifndef RESPONDCODEC_H
#define RESPONDCODEC_H
#include "codec.h"
#include "Message.pb.h"
using namespace std;

struct RespondInfo
{
    bool status;
    QString data;
};

class RespondCodec : public Codec
{
public:
    RespondCodec();
    // 对传入的数据进行序列化
    RespondCodec(RespondInfo* info);
    // 对传入的数据进行反序列化
    RespondCodec(QString msg);
    ~RespondCodec();

    // 初始化函数
    // 对传入的数据进行序列化, 传递给序列化对象
    void initMessage(RespondInfo* info);
    // 对传入的数据进行序列化, 传递给序列化对象
    void initMessage(QString msg);

    // 重写父类虚函数
    QString encodeMsg();
    void decodeMsg(void* output);

private:
    string m_encMsg;
    RespondMsg m_msg;
    RespondInfo m_info;
};

#endif // RESPONDCODEC_H
